﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Entities;
using Volo.Abp.Domain.Entities.Auditing;
using Volo.Abp.MultiTenancy;

namespace Himp.Platform.Dc
{
    /// <summary>
    /// 域字典
    /// </summary>
    [Table("STD_DOMAIN_DICT")]
    public class StdDomainDict : Entity<Guid>, IMultiTenant
    {
        /// <summary>
        /// 
        /// </summary>
        public StdWordDict StdWordDict { get; set; }

        /// <summary>
        /// 域组
        /// </summary>
        [Column("DOMAIN_GROUP")]
        public EnumDomainGroup DomainGroup { get; set; }

        /// <summary>
        /// 域编码
        /// </summary>
        [Column("DOMAIN_CODE")]
        public string DomainCode { get; set; }

        /// <summary>
        /// 域名
        /// </summary>
        [Column("DOMAIN_NAME")]
        public string DomainName { get; set; }

        /// <summary>
        /// 逻辑数据类型
        /// </summary>
        [Column("LOGICAL_DATA_TYPE")]
        public EnumLogicalDataType LogicalDataType { get; set; }

        /// <summary>
        /// 物理数据类型
        /// </summary>
        [Column("PHYS_DATA_TYPE")]
        public EnumPhysicalDataType PhysDataType { get; set; }

        /// <summary>
        /// 数据长度
        /// </summary>
        [Column("DATA_LEN")]
        public string DataLen { get; set; }

        /// <summary>
        /// 说明
        /// </summary>
        [Column("EXP")]
        public string? Exp { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public Guid? TenantId { get; set; }
    }
}
